/*********************************************************************************************//**
*\file config.h
*\author Daneluzzi F., Pelloux-Prayer J., Battandier P.
*\version 1
*\date janvier 2012
*\brief Fichier de configuration du projet pour le pic utilise.
*************************************************************************************************/
#ifndef _config_h_
#define _config_h_

#include "p18cxxx.h"

#define FOSC_INT 1

#define FOSC_INT_HF 1
#define FOSC_INT_MF 0
#define FOSC_INT_LF 0

#define FOSC_INT_HF_16MHz  1
#define FOSC_INT_HF_8MHz   0
#define FOSC_INT_HF_4MHz   0
#define FOSC_INT_HF_2MHz   0
#define FOSC_INT_HF_1MHz   0

#define FOSC_INT_MF_500kHz 0
#define FOSC_INT_MF_250kHz 0
#define FOSC_INT_MF_31kHz  0

#if FOSC_INT_HF_16MHz
    #define OSC_FREQUENCY 16
#elif FOSC_INT_HF_8MHz
    #define OSC_FREQUENCY 8
#elif FOSC_INT_HF_4MHz
    #define OSC_FREQUENCY 4
#elif FOSC_INT_HF_2MHz
    #define OSC_FREQUENCY 2
#else
    #define OSC_FREQUENCY 1
#endif

#define PIN_NUMERIQUE 0
#define PIN_ANALOGIQUE 1

#define PIN_SORTIE 0
#define PIN_ENTREE 1

/*Branchement de la carte SD :
 *  -Chip-Select-=>-RC2-
 *  Chip Select => RA5
 *  MOSI        => RC5
 *  MISO        => RC4
 *  CLK         => RC3
 *  Card Detect => RA2 */
#define SPI_MOSI_AN   ANSELCbits.ANSC5
#define SPI_MOSI_DIR  TRISCbits.RC5
#define SPI_MISO_AN   ANSELCbits.ANSC4
#define SPI_MISO_DIR  TRISCbits.RC4
#define SPI_SCK_AN    ANSELCbits.ANSC3
#define SPI_SCK_DIR   TRISCbits.RC3

#define SPI_CSb_AN    ANSELAbits.ANSA5
#define SPI_CSb       LATAbits.LATA5
#define SPI_CSb_DIR   TRISAbits.RA5

#define SD_CD_AN      ANSELAbits.ANSA2
#define SD_CD         LATAbits.LATA2
#define SD_CD_DIR     TRISAbits.TRISA2

/*Branchement XBee :
 *  RX1          => RC7
 *  TX1          => RC6 */
#define USART_RX1_AN  ANSELCbits.ANSC7
#define USART_RX1_DIR TRISCbits.RC7
#define USART_TX1_AN  ANSELCbits.ANSC6
#define USART_TX1_DIR TRISCbits.RC6

/* Branchement GSM :
 *  RX2          => RB7
 *  TX2          => RB6*/
#define USART_RX2_DIR TRISBbits.RB7
#define USART_TX2_DIR TRISBbits.RB6

/* Pins disponibles :
 *  RA0     RB0     RE3
 *  RA1     RB1
 *  RA3     RB2
 *  RA4     RB3
 *  -RA5-   RB4
 *  RA6     RB5
 *  RA7
 */

/*********************************************************************************************//**
* \func: init_MicroController
*
* \brief
* Cette fonction initialise le micro-controleur
*
*
* PARAMETRES :
* Aucun
*************************************************************************************************/
void init_MicroController(void);

#endif //_config_h_
